Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>CodeView</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/CodeView"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-CodeView rootpage-CodeView skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">CodeView</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p class="mw-empty-elt">
</p>
<style data-mw-deduplicate="TemplateStyles:r1295905060">
/* start https://en.wikipedia.org/ */


.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}


/* end https://en.wikipedia.org/ */
</style><table class="infobox vevent"><tbody><tr><th colspan="2" class="infobox-above summary">CodeView</th></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Programmer" title="Programmer">Original author(s)</a></th><td class="infobox-data">David Norris</td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Programmer" title="Programmer">Developer(s)</a></th><td class="infobox-data"><a href="Microsoft" title="Microsoft">Microsoft</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;">Initial release</th><td class="infobox-data">1985<span style="display:none">&nbsp;(<span class="bday dtstart published updated">1985</span>)</span></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Operating_system" title="Operating system">Operating system</a></th><td class="infobox-data"><a href="MS-DOS" title="MS-DOS">MS-DOS</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Computing_platform" title="Computing platform">Platform</a></th><td class="infobox-data"><a href="X86" title="X86">x86</a></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Software_categories#Categorization_approaches" title="Software categories">Type</a></th><td class="infobox-data"><a href="Debugger" title="Debugger">Debugger</a></td></tr></tbody></table>
<p><b>CodeView</b> is a standalone <a href="Debugger" title="Debugger">debugger</a> created by David Norris at <a href="Microsoft" title="Microsoft">Microsoft</a> in 1985 as part of its development toolset.<sup id="cite_ref-CV3x_1-0" class="reference"><a href="#cite_note-CV3x-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> It originally shipped with Microsoft C 4.0 and later. It also shipped with <a href="Visual_Basic_(classic)" title="Visual Basic (classic)">Visual Basic</a> for <a href="MS-DOS" title="MS-DOS">MS-DOS</a>, <a href="Microsoft_BASIC_PDS" class="mw-redirect" title="Microsoft BASIC PDS">Microsoft BASIC PDS</a>, and a number of other Microsoft language products.<sup id="cite_ref-CV87_2-0" class="reference"><a href="#cite_note-CV87-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> It was one of the first debuggers for MS-DOS to be full-screen oriented, rather than line-oriented (as Microsoft's predecessors <a href="DEBUG_(DOS_command)" class="mw-redirect" title="DEBUG (DOS command)">DEBUG</a> and <a href="SYMDEB" class="mw-redirect" title="SYMDEB">SYMDEB</a> or <a href="Digital_Research" title="Digital Research">Digital Research</a>'s SID).
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Overview">Overview</h2></div>
<p>When running, CodeView presents the user with several <a href="Window_(computing)" title="Window (computing)">windows</a> that can be tiled, moved, sized and otherwise manipulated via the keyboard or mouse, with CodeView 4.x providing a richer interface. Some of the windows include:
</p>
<ul><li>Code window – the code window showed the currently debugged code in its <a href="Source_code" title="Source code">source code</a> context.</li>
<li>Data window – a <a href="Hex_dump" title="Hex dump">hexadecimal dump</a> of a user-specified memory area.</li>
<li>Watch window – a contextual display of variables by name.</li>
<li>Locals window – a contextual display of variables local to the current function.</li>
<li>Command window – user commands (using the same or similar syntax as DEBUG and SYMDEB) could be entered here.</li>
<li>Assembly window – the assembly (machine code) was displayed, allowing for single-stepping through functions.</li>
<li>Register window – to visualize the <a href="80x86" class="mw-redirect" title="80x86">80x86</a> register contents, including segments, flags and the <a href="Floating-point_unit" title="Floating-point unit">FPU</a> (CodeView existed before <a href="MMX_(instruction_set)" title="MMX (instruction set)">MMX</a> and other <a href="SIMD" class="mw-redirect" title="SIMD">SIMD</a> extensions).</li>
<li>Output window – a window showing startup operations and debugging information relating to breakpoints,<sup id="cite_ref-CV87_2-1" class="reference"><a href="#cite_note-CV87-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> hardware breaks (interrupt 0 and 3), etc.</li></ul>
<div class="mw-heading mw-heading3"><h3 id="Features">Features</h3></div>
<ul><li>386 mode – 8086, 80286 and 80386 and later processors. 386 enhanced mode is activated by a menu option, allowing for 32-bit registers and disassembly.</li>
<li>Monochrome monitor support – allows debugging on either a single color (CGA, EGA or VGA) monitor with page/memory swapping between the user application and the CodeView screen, or using a separate monochrome monitor. The monochrome monitor exists in memory address space 0xb0000, while the color monitor exists at 0xb8000 for text and 0xa0000 for graphics. Use of the monochrome monitor with its separate memory address space allows debugging graphics applications without affecting the display, as well as all text modes. Monochrome monitors are limited to 25 lines, whereas color monitors allow 25, 43 or 50 line mode, allowing for more information on the screen at the same time.</li></ul>
<p>Creating symbolic debugging output, which allows memory locations to be viewed by their programmer-assigned name, along with a program database showing the source code line related to every computer instruction in the binary executable, is enabled by the command line switch -Zi given to the compiler, and -CO given to the linker. Variants like -Zs and -Zd provide lesser information, and smaller output files which, during the early 1990s, were important due to limited machine resources, such as memory and hard disk capacity. Many systems in those days had 8MB of memory or less.
</p><p>CodeView handles all program models, including TINY, SMALL, COMPACT, MEDIUM, LARGE and HUGE, with TINY (DOS-based .COM files) having their symbolic debugger information stored in a separate file, with all of the other .EXE formats containing the symbolic information directly inside the executable. This often introduced a notable size increase, and it therefore became desirable for some developers to use #pragma switches within their C (and later C++) source code to prevent the majority of the application from having symbolic output, and instead limiting that output to only those portions which required it for current debugging.
</p><p>CodeView version 3.x and 4.x introduced various transport layers, which removed some of the memory space limitations to this form of symbolic debugging. Typically the debugger runs in the lower 640KB memory space alongside the application being debugged, which greatly decreases the amount of memory available to the application being debugged. The transport layer allows only a stub to exist in main memory, while the bulk of the debugger code resides in EMS or XMS (memory above the 1&nbsp;MB barrier, or outside of the normal 0&nbsp;KB - 640&nbsp;KB address space typically used by DOS programs). CodeView also came with a CVPACK command-line utility, which can reduce the size of the CodeView-generated information internally, while still retaining full symbolic access to data.
</p>
<div class="mw-heading mw-heading2"><h2 id="Visual_C++_support">Visual C++ support</h2></div>
<p>Microsoft released <a href="Visual_C%2B%2B" class="mw-redirect" title="Visual C++">Visual C++</a> 1.0 with CodeView functionality integrated directly into a single programming environment, known as the <a href="Integrated_development_environment" title="Integrated development environment">Integrated Development Environment</a> (IDE) -- though CodeView was still available in the 16-bit versions of Visual C++. <a href="QuickC" title="QuickC">QuickC</a> and a number of other development tools in the 'Quick' series also supported this move to a single-source IDE, what became the precursor to the modern Visual Studio developer environment, as well as the model for countless other developer toolsets.
</p><p>This integration was seen by many developers as a more natural way of developing software because both coding and debugging could be handled without switching programs or context, and all from the same logical location (even though internally many separate programs were running to support editing, compiling and debugging). As a result, most development tools and/or platforms offer similar products or features.
</p><p>Today, the debugger is considered an integrated and essential part of the <a href="Microsoft_Visual_Studio" class="mw-redirect" title="Microsoft Visual Studio">Microsoft Visual Studio</a> family of products, and owes its true roots to CodeView, and the enhancements seen in version 4.x specifically.
</p>
<div class="mw-heading mw-heading2"><h2 id="Symdeb">Symdeb</h2></div>
<p>Another debugging product available from Microsoft in the mid-1980s was <i>SYMDEB</i>.<sup id="cite_ref-SYMDEB_3-0" class="reference"><a href="#cite_note-SYMDEB-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p><p>It had over 30 commands, and was described by <a href="PC_Magazine" class="mw-redirect" title="PC Magazine">PC Magazine</a> as a step up from DEBUG.<sup id="cite_ref-PCW_1986_4-0" class="reference"><a href="#cite_note-PCW_1986-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> Codeview in turn was described as "a fullscreen SYMDEB".<sup id="cite_ref-PCMag_1986_5-0" class="reference"><a href="#cite_note-PCMag_1986-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-MSC4_6-0" class="reference"><a href="#cite_note-MSC4-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Borland_Turbo_Debugger" title="Borland Turbo Debugger">Borland Turbo Debugger</a></li>
<li><a href="SoftICE" title="SoftICE">SoftICE</a></li>
<li><a href="X86_memory_models" title="X86 memory models">x86 memory models</a></li>
<li><a href="Microsoft_Visual_Studio_Debugger" class="mw-redirect" title="Microsoft Visual Studio Debugger">Microsoft Visual Studio Debugger</a></li>
<li><a href="Program_database" title="Program database">Program database</a> - CodeView formats and types are still present in debugging information generated by modern C++ toolchains<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-CV3x-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-CV3x_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite class="citation magazine cs1"><a rel="nofollow" class="external text" href="https://winworldpc.com/product/codeview/3x">"CodeView 3.x"</a>. <i>WinWorld</i>.</cite></span>
</li>
<li id="cite_note-CV87-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-CV87_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-CV87_2-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation book cs1"><a href="Microsoft_Macro_Assembler" title="Microsoft Macro Assembler"><i>Microsoft Macro Assembler 5.1 - Microsoft CodeView and Utilities</i></a>. <a href="Microsoft_Corporation" class="mw-redirect" title="Microsoft Corporation">Microsoft Corporation</a>. 1987. p.&nbsp;157. Document No. 4108-40010-500-R03-1287.</cite></span>
</li>
<li id="cite_note-SYMDEB-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-SYMDEB_3-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFPar2018" class="citation web cs1">Par, Jeff (2018-02-25). <a rel="nofollow" class="external text" href="https://www.pcjs.org/blog/2018/02/25">"A Short History of SYMDEB"</a>. <i>PCjs Machines</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2019-05-19</span></span>.</cite></span>
</li>
<li id="cite_note-PCW_1986-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-PCW_1986_4-0">^</a></b></span> <span class="reference-text"><cite class="citation magazine cs1"><a rel="nofollow" class="external text" href="https://books.google.com/books?id=nuXmVNll5JEC">"SYMDEB: A step up from Debug"</a>. <i><a href="PC_World" title="PC World">PC World</a></i>. 1986-10-14. p.&nbsp;296.</cite></span>
</li>
<li id="cite_note-PCMag_1986-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-PCMag_1986_5-0">^</a></b></span> <span class="reference-text"><cite class="citation magazine cs1">"SYMDEB". <i><a href="PC_Magazine" class="mw-redirect" title="PC Magazine">PC Magazine</a></i>. Vol.&nbsp;5, no.&nbsp;17. <a href="Ziff_Davis%2C_Inc." class="mw-redirect" title="Ziff Davis, Inc.">Ziff Davis, Inc.</a> 1986-09-30. p.&nbsp;38. <a href="ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a>&nbsp;<a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/0888-8507">0888-8507</a>.</cite></span>
</li>
<li id="cite_note-MSC4-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-MSC4_6-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.os2museum.com/wp/ms-c-4-0-documentation-added">"MS C 4.0 Documentation Added"</a>. <i>OS2museum.com</i>.</cite></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://llvm.org/docs/PDB/CodeViewTypes.html#introduction">"CodeView Type Records — LLVM 13 documentation"</a>. <i>llvm.org</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-12-19</span></span>.</cite></span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="Further_reading">Further reading</h2></div>
<ul><li><cite id="CITEREFPetzold1990" class="citation book cs1"><a href="Charles_Petzold" title="Charles Petzold">Petzold, Charles</a> (1990). <span class="id-lock-registration" title="Free registration required"><a rel="nofollow" class="external text" href="https://archive.org/details/programmingwindo0000petz"><i>Programming Windows: the Microsoft Guide to Writing Applications for Windows 3</i></a></span>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9781556152641</bdi>.</cite></li>
<li><cite class="citation book cs1"><i>CodeView Debugger User's Guide</i>. <a href="Microsoft_Corporation" class="mw-redirect" title="Microsoft Corporation">Microsoft Corporation</a>. 1993.</cite></li></ul>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Microsoft_development_tools271" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="Microsoft_development_tools271" style="font-size:114%;margin:0 4em">Microsoft development tools</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Development<br>environments</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Microsoft_Visual_Studio" class="mw-redirect" title="Microsoft Visual Studio">Visual Studio</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Visual_Studio_Code" title="Visual Studio Code">Code</a></li>
<li><a href="Microsoft_Visual_Studio_Express" title="Microsoft Visual Studio Express">Express</a></li>
<li><a href="VSTS_Profiler" title="VSTS Profiler">Team System Profiler</a></li>
<li><a href="Visual_Studio_Tools_for_Applications" title="Visual Studio Tools for Applications">Tools for Applications</a></li>
<li><a href="Visual_Studio_Tools_for_Office" title="Visual Studio Tools for Office">Tools for Office</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Others</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Microsoft_Blend" title="Microsoft Blend">Blend</a></li>
<li><a href="Microsoft_Expression_Web" title="Microsoft Expression Web">Expression Web</a></li>
<li><a href="FxCop" title="FxCop">FxCop</a></li>
<li><a href="GW-BASIC" title="GW-BASIC">GW-BASIC</a></li>
<li><a href="Microsoft_MACRO-80" title="Microsoft MACRO-80">MACRO-80</a></li>
<li><a href="Microsoft_Macro_Assembler" title="Microsoft Macro Assembler">Macro Assembler</a></li>
<li><a href="MSBuild" title="MSBuild">MSBuild</a></li>
<li><a href="Microsoft_Pascal" title="Microsoft Pascal">Pascal</a></li>
<li><a href="QuickBASIC" title="QuickBASIC">QuickBASIC</a>
<ul><li><a href="QBasic" title="QBasic">QBasic</a></li></ul></li>
<li><a href="QuickC" title="QuickC">QuickC</a></li>
<li><a href="Microsoft_Robotics_Developer_Studio" title="Microsoft Robotics Developer Studio">Robotics Developer Studio</a></li>
<li><a href="Roslyn_(compiler)" title="Roslyn (compiler)">Roslyn</a></li>
<li><a href="Microsoft_SharePoint_Designer" title="Microsoft SharePoint Designer">SharePoint Designer</a>
<ul><li><a href="Microsoft_FrontPage" title="Microsoft FrontPage">FrontPage</a></li></ul></li>
<li><a href="Microsoft_Small_Basic" title="Microsoft Small Basic">Small Basic</a></li>
<li><a href="Microsoft_WebMatrix" title="Microsoft WebMatrix">WebMatrix</a></li>
<li><a href="Windows_App_SDK" title="Windows App SDK">Windows App SDK</a></li>
<li><a href="Windows_App_Studio" title="Windows App Studio">Windows App Studio</a></li>
<li><a href="Microsoft_Windows_SDK" title="Microsoft Windows SDK">Windows SDK</a>
<ul><li><a href="CLR_Profiler" title="CLR Profiler">CLR Profiler</a></li>
<li><a href="ILAsm" title="ILAsm">ILAsm</a></li>
<li><a href="Native_Image_Generator" title="Native Image Generator">Native Image Generator</a></li>
<li><a href="WinDiff" title="WinDiff">WinDiff</a></li>
<li><a href="XAMLPad" class="mw-redirect" title="XAMLPad">XAMLPad</a></li></ul></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Languages</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Microsoft_Dynamics_AX" class="mw-redirect" title="Microsoft Dynamics AX">Dynamics AX</a></li>
<li><a href="Microsoft_BASIC" title="Microsoft BASIC">BASIC</a></li>
<li>Visual Basic
<ul><li><a href="Visual_Basic_(classic)" title="Visual Basic (classic)">legacy</a></li>
<li><a href="Visual_Basic_.NET" class="mw-redirect" title="Visual Basic .NET">VB.NET</a></li>
<li><a href="Visual_Basic_for_Applications" title="Visual Basic for Applications">VBA</a></li>
<li><a href="VBScript" title="VBScript">VBScript</a></li></ul></li>
<li><a href="Bosque_(programming_language)" title="Bosque (programming language)">Bosque</a></li>
<li><a href="Microsoft_Visual_C%2B%2B" title="Microsoft Visual C++">Visual C++</a>
<ul><li><a href="C%2B%2B/CX" title="C++/CX">C++/CX</a></li>
<li><a href="C%2B%2B/CLI" title="C++/CLI">C++/CLI</a></li>
<li><a href="Managed_Extensions_for_C%2B%2B" title="Managed Extensions for C++">Managed C++</a></li>
<li><a href="C%2B%2B/WinRT" title="C++/WinRT">C++/WinRT</a></li></ul></li>
<li><a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li>
<li><a href="C/AL" title="C/AL">C/AL</a></li>
<li><a href="Dafny" title="Dafny">Dafny</a></li>
<li><a href="Dexterity_(programming_language)" title="Dexterity (programming language)">Dexterity</a></li>
<li><a href="F_Sharp_(programming_language)" title="F Sharp (programming language)">F#</a></li>
<li><a href="F*_(programming_language)" title="F* (programming language)">F*</a></li>
<li><a href="Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a></li>
<li><a href="Java_(programming_language)" title="Java (programming language)">Java</a>
<ul><li><a href="Visual_J%2B%2B" title="Visual J++">J++</a></li>
<li><a href="Visual_J_Sharp" title="Visual J Sharp">J#</a></li></ul></li>
<li><a href="JavaScript" title="JavaScript">JavaScript</a>
<ul><li><a href="TypeScript" title="TypeScript">TypeScript</a></li>
<li><a href="JScript" title="JScript">JScript</a></li></ul></li>
<li><a href="IronPython" title="IronPython">IronPython</a></li>
<li><a href="IronRuby" title="IronRuby">IronRuby</a></li>
<li><a href="Lean_(proof_assistant)" title="Lean (proof assistant)">Lean</a></li>
<li><a href="P_(programming_language)" title="P (programming language)">P</a></li>
<li><a href="Microsoft_Power_Fx" title="Microsoft Power Fx">Power Fx</a></li>
<li><a href="PowerShell" title="PowerShell">PowerShell</a></li>
<li><a href="Project_Verona" title="Project Verona">Project Verona</a></li>
<li><a href="Q_Sharp" title="Q Sharp">Q#</a></li>
<li><a href="Microsoft_Small_Basic" title="Microsoft Small Basic">Small Basic</a></li>
<li><a href="Microsoft_Visual_Programming_Language" title="Microsoft Visual Programming Language">VPL</a></li>
<li><a href="Extensible_Application_Markup_Language" title="Extensible Application Markup Language">XAML</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">APIs and<br>frameworks</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Native</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Windows_API" title="Windows API">Windows API</a></li>
<li><a href="Microsoft_Silverlight" title="Microsoft Silverlight">Silverlight</a></li>
<li><a href="Microsoft_XNA" title="Microsoft XNA">XNA</a></li>
<li><a href="DirectX" title="DirectX">DirectX</a>
<ul><li><a href="Managed_DirectX" title="Managed DirectX">Managed DirectX</a></li></ul></li>
<li><a href="Universal_Windows_Platform" title="Universal Windows Platform">UWP</a></li>
<li><a href="Xbox_Development_Kit" title="Xbox Development Kit">Xbox Development Kit</a></li>
<li><a href="Windows_Installer" title="Windows Installer">Windows Installer</a></li>
<li><a href="WinUI" class="mw-redirect" title="WinUI">WinUI</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href=".NET" title=".NET">.NET</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="ASP.NET" title="ASP.NET">ASP.NET</a>
<ul><li><a href="ASP.NET_Core" title="ASP.NET Core">Core</a></li>
<li><a href="ASP.NET_AJAX" title="ASP.NET AJAX">AJAX</a></li>
<li><a href="ASP.NET_Dynamic_Data" title="ASP.NET Dynamic Data">Dynamic Data</a></li>
<li><a href="ASP.NET_MVC" title="ASP.NET MVC">MVC</a></li>
<li><a href="ASP.NET_Razor" title="ASP.NET Razor">Razor</a></li>
<li><a href="ASP.NET_Web_Forms" title="ASP.NET Web Forms">Web Forms</a></li></ul></li>
<li><a href="ADO.NET" title="ADO.NET">ADO.NET</a>
<ul><li><a href="Entity_Framework" title="Entity Framework">Entity Framework</a></li></ul></li>
<li><a href=".NET_MAUI" class="mw-redirect" title=".NET MAUI">MAUI</a></li>
<li><a href="Windows_CardSpace" title="Windows CardSpace">CardSpace</a></li>
<li><a href="Windows_Communication_Foundation" title="Windows Communication Foundation">Communication Foundation</a></li>
<li><a href="Windows_Identity_Foundation" title="Windows Identity Foundation">Identity Foundation</a></li>
<li><a href="Language_Integrated_Query" title="Language Integrated Query">LINQ</a></li>
<li><a href="Windows_Presentation_Foundation" title="Windows Presentation Foundation">Presentation Foundation</a></li>
<li><a href="Windows_Workflow_Foundation" title="Windows Workflow Foundation">Workflow Foundation</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Device_driver" title="Device driver">Device drivers</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Windows_Driver_Kit" title="Windows Driver Kit">WDK</a></li>
<li><a href="Windows_Driver_Frameworks" title="Windows Driver Frameworks">WDF</a>
<ul><li><a href="Kernel-Mode_Driver_Framework" title="Kernel-Mode Driver Framework">KMDF</a></li>
<li><a href="User-Mode_Driver_Framework" title="User-Mode Driver Framework">UMDF</a></li></ul></li>
<li><a href="Windows_Hardware_Lab_Kit" title="Windows Hardware Lab Kit">Windows HLK</a></li>
<li><a href="Windows_Driver_Model" title="Windows Driver Model">WDM</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Database</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;"><a href="Microsoft_SQL_Server" title="Microsoft SQL Server">SQL Server</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="SQL_Server_Express" title="SQL Server Express">Express</a></li>
<li><a href="SQL_Server_Compact" title="SQL Server Compact">Compact</a></li>
<li><a href="SQL_Server_Management_Studio" title="SQL Server Management Studio">Management Studio</a></li>
<li><a href="MSDE" title="MSDE">MSDE</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">SQL services</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Microsoft_Analysis_Services" title="Microsoft Analysis Services">Analysis</a></li>
<li><a href="SQL_Server_Reporting_Services" title="SQL Server Reporting Services">Reporting</a></li>
<li><a href="SQL_Server_Integration_Services" title="SQL Server Integration Services">Integration</a></li>
<li><a href="SQL_Server_Notification_Services" title="SQL Server Notification Services">Notification</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;font-weight:normal;">Other</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Visual_FoxPro" title="Visual FoxPro">Visual FoxPro</a></li>
<li><a href="Microsoft_Access" title="Microsoft Access">Microsoft Access</a></li>
<li><a href="Access_Database_Engine" title="Access Database Engine">Access Database Engine</a></li>
<li><a href="Extensible_Storage_Engine" title="Extensible Storage Engine">Extensible Storage Engine</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Source control</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Microsoft_Visual_SourceSafe" title="Microsoft Visual SourceSafe">Visual SourceSafe</a></li>
<li><a href="Azure_DevOps_Server#TFVC" title="Azure DevOps Server">Team Foundation Version Control</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Testing and<br>debugging</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="OneFuzz" title="OneFuzz">OneFuzz</a></li>
<li><a href="Playwright_(software)" title="Playwright (software)">Playwright</a></li>
<li><a href="Microsoft_Script_Debugger" title="Microsoft Script Debugger">Script Debugger</a></li>
<li><a href="WinDbg" title="WinDbg">WinDbg</a></li>
<li><a href="XUnit.net" title="XUnit.net">xUnit.net</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Delivery</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Active_Setup" title="Active Setup">Active Setup</a></li>
<li><a href="ClickOnce" title="ClickOnce">ClickOnce</a></li>
<li><a href="Npm_(software)" class="mw-redirect" title="Npm (software)">npm</a></li>
<li><a href="NuGet" title="NuGet">NuGet</a></li>
<li><a href="Vcpkg" title="Vcpkg">vcpkg</a></li>
<li><a href="Web_Platform_Installer" title="Web Platform Installer">Web Platform Installer</a></li>
<li><a href="Windows_Installer" title="Windows Installer">Windows Installer</a>
<ul><li><a href="WiX" title="WiX">WiX</a></li></ul></li>
<li><a href="Windows_Package_Manager" title="Windows Package Manager">Windows Package Manager</a></li>
<li><a href="Microsoft_Store" title="Microsoft Store">Microsoft Store</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> Category</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2023-02-08" href="https://en.wikipedia.org/wiki/?title=CodeView&amp;oldid=1138142583">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>